Import('rtconfig')
from building import *

cwd = GetCurrentDir()
path = [cwd + '/CMSIS/Include',cwd + '/MIMXRT1064', cwd + '/MIMXRT1064/drivers']
src = Split('''
MIMXRT1064/system_MIMXRT1064.c
MIMXRT1064/drivers/fsl_common.c
MIMXRT1064/drivers/fsl_clock.c
MIMXRT1064/drivers/fsl_cache.c
''')

if rtconfig.CROSS_TOOL == 'gcc':
    src += ['MIMXRT1064/gcc/startup_MIMXRT1064.S']
elif rtconfig.CROSS_TOOL == 'keil':
    src += ['MIMXRT1064/arm/startup_MIMXRT1064.s']
elif rtconfig.CROSS_TOOL == 'iar':
    src += ['MIMXRT1064/iar/startup_MIMXRT1064.s']

if GetDepend(['BSP_USING_GPIO']):
    src += ['MIMXRT1064/drivers/fsl_gpio.c']

if GetDepend(['BSP_USING_LPUART']):
    src += ['MIMXRT1064/drivers/fsl_lpuart.c']

if GetDepend(['BSP_USING_I2C']):
    src += ['MIMXRT1064/drivers/fsl_lpi2c.c']

if GetDepend(['BSP_USING_SPI']):
    src += ['MIMXRT1064/drivers/fsl_lpspi.c']

if GetDepend(['BSP_USING_HWTIMER']) or GetDepend(['BSP_USING_PWM']):
    src += ['MIMXRT1064/drivers/fsl_gpt.c']

if GetDepend(['BSP_USING_PWM']):
    src += ['MIMXRT1064/drivers/fsl_pwm.c']

if GetDepend(['BSP_USING_RTC']):
    src += ['MIMXRT1064/drivers/fsl_snvs_hp.c']
    src += ['MIMXRT1064/drivers/fsl_snvs_lp.c']

if GetDepend(['BSP_USING_WDT']):
    src += ['MIMXRT1064/drivers/fsl_wdog.c']
    src += ['MIMXRT1064/drivers/fsl_rtwdog.c']

if GetDepend(['BSP_USING_ADC']):
    src += ['MIMXRT1064/drivers/fsl_adc.c']

if GetDepend(['BSP_USING_SDRAM']):
    src += ['MIMXRT1064/drivers/fsl_semc.c']

if GetDepend(['RT_USING_USB_HOST']) or GetDepend(['RT_USING_USB_DEVICE']):
    src += ['MIMXRT1064/drivers/fsl_usdhc.c']

if GetDepend(['RT_USING_CAN']):
    src += ['MIMXRT1064/drivers/fsl_flexcan.c']

if GetDepend(['BSP_USING_ETH']):
    src += ['MIMXRT1064/drivers/fsl_enet.c']

if GetDepend(['RT_USING_SDIO']):
    src += ['MIMXRT1064/drivers/']

if GetDepend(['RT_USING_AUDIO']):
    src += ['MIMXRT1064/drivers/fsl_sai.c']

if GetDepend(['BSP_USING_LTDC']):
    src += ['MIMXRT1064/drivers/']

if GetDepend(['BSP_USING_DMA']):
    src += ['MIMXRT1064/drivers/fsl_dmamux.c']
    src += ['MIMXRT1064/drivers/fsl_edma.c']

if GetDepend(['RT_SERIAL_USING_DMA']):
    src += ['MIMXRT1064/drivers/fsl_dmamux.c']
    src += ['MIMXRT1064/drivers/fsl_edma.c']
    src += ['MIMXRT1064/drivers/fsl_lpuart_edma.c']
    src += ['MIMXRT1064/drivers/fsl_lpspi_edma.c']

group = DefineGroup('Libraries', src, depend = [''], CPPPATH = path)

Return('group')
